home *** CD-ROM | disk | FTP | other *** search
/ Amiga Games: Greatest Hits 1996 / Amiga Games: Greatest Hits 1996.iso / userbox / publicdomain / superplay-lib_dev / programmers / include / superplay / superplay.h next >
C/C++ Source or Header  |  1996-05-27  |  4KB  |  147 lines

  1. /* superplay/superplay.h            */
  2. /* Version    : 4.1                 */
  3. /* Date       : 27.11.1994          */
  4. /* Written by : Andreas R. Kleinert */
  5.  
  6. #ifndef SUPERPLAY_SUPERPLAY_H
  7. #define SUPERPLAY_SUPERPLAY_H
  8.  
  9.  
  10. /* *************************************************** */
  11. /* *                             * */
  12. /* * Version Defines                     * */
  13. /* *                             * */
  14. /* *************************************************** */
  15.  
  16. #define SPLIB_VERSION  4
  17.  
  18.  
  19. /* *************************************************** */
  20. /* *                             * */
  21. /* * Includes                          * */
  22. /* *                             * */
  23. /* *************************************************** */
  24.  
  25. #ifndef EXEC_TYPES_H
  26. #include <exec/types.h>
  27. #endif /* EXEC_TYPES_H */
  28.  
  29. #ifndef LIBRARIES_DOS_H
  30. #include <libraries/dos.h>
  31. #endif /* LIBRARIES_DOS_H */
  32.  
  33. #ifndef _STDIO_H
  34. #include <stdio.h>
  35. #endif /* _STDIO_H */
  36.  
  37. #ifndef _STDLIB_H
  38. #include <stdlib.h>
  39. #endif /* _STDLIB_H */
  40.  
  41. #ifndef _STRING_H
  42. #include <string.h>
  43. #endif /* _STRING_H */
  44.  
  45.  
  46. /* *************************************************** */
  47. /* *                             * */
  48. /* * Custom Defines                     * */
  49. /* *                             * */
  50. /* *************************************************** */
  51.  
  52. #ifndef N
  53. #define N NULL     /* useful */
  54. #endif /* N */
  55.  
  56.  
  57. /* *************************************************** */
  58. /* *                             * */
  59. /* * MACROs for Version-Tests                 * */
  60. /* *                             * */
  61. /* *************************************************** */
  62.  
  63. #define LibVer(x) ( ((struct Library *) x)->lib_Version )
  64. #define OS_VER      LibVer(SysBase)
  65.  
  66.  
  67. /* *************************************************** */
  68. /* *                             * */
  69. /* * DEFINES                                         * */
  70. /* *                             * */
  71. /* *************************************************** */
  72.  
  73.  
  74. /* Possible FileTypes */
  75.  
  76. #define SP_FILETYPE_NONE     ((ULONG) 0)
  77. #define SP_FILETYPE_UNKNOWN  SP_FILETYPE_NONE
  78.  
  79.      /*
  80.         above : External, user defined FileTypes
  81.                 (defined EACH TIME NEW at Library's startup-time).
  82.      */
  83.  
  84. #define SP_FILETYPE_ILLEGAL  ((ULONG) 0xFFFFFFFF)
  85.  
  86.  
  87. /* Possible SubTypes of FileTypes */
  88.  
  89. #define SP_SUBTYPE_NONE        ((ULONG) 0)
  90. #define SP_SUBTYPE_UNKNOWN  SP_SUBTYPE_NONE
  91.  
  92.      /*
  93.         above : External, user defined FileSubTypes
  94.                 (defined EACH TIME NEW at Library's startup-time).
  95.      */
  96.  
  97. #define SP_SUBTYPE_ILLEGAL  ((ULONG) 0xFFFFFFFF)
  98.  
  99.  
  100. /* Possible Input and Output mediums */
  101.  
  102. #define SPO_MEDIUM_NONE        ((ULONG) 0)
  103. #define SPO_MEDIUM_ILLEGAL  ((ULONG) 0xFFFFFFFF)
  104.  
  105. #define SPO_MEDIUM_DISK    ((ULONG) 1)              /* Play and Write options   */
  106. #define SPO_MEDIUM_CLIP    ((ULONG) 2)
  107.  
  108.      /* might not be supported by all kinds of File(Sub)Types */
  109.  
  110.  
  111. /* *************************************************** */
  112. /* *                             * */
  113. /* * Function Error Codes                     * */
  114. /* *                             * */
  115. /* *************************************************** */
  116.  
  117. #define SPERR_MAX_ERROR_TEXT_LENGTH (80)       /* plus Null-Byte */
  118.  
  119. #define SPERR_NO_ERROR               (NULL)
  120. #define SPERR_INTERNAL_ERROR         ((ULONG) 0xFFFFFFFF)
  121.  
  122. #define SPERR_UNKNOWN_FILE_FORMAT    ((ULONG) 1)
  123. #define SPERR_FILE_NOT_FOUND         ((ULONG) 2)
  124. #define SPERR_NO_MEMORY              ((ULONG) 3)
  125. #define SPERR_IFFPARSE_ERROR         ((ULONG) 4)
  126. #define SPERR_NO_CLIPBOARD           ((ULONG) 5)
  127. #define SPERR_NO_FILE                ((ULONG) 6)
  128. #define SPERR_NO_HANDLE              ((ULONG) 7)
  129. #define SPERR_NO_DATA                ((ULONG) 8)
  130. #define SPERR_NO_INFORMATION         ((ULONG) 9)
  131. #define SPERR_ILLEGAL_ACCESS         ((ULONG) 10)
  132. #define SPERR_DECODE_ERROR           ((ULONG) 11)
  133. #define SPERR_UNKNOWN_PARAMETERS     ((ULONG) 12)
  134. #define SPERR_ACTION_NOT_SUPPORTED   ((ULONG) 13)
  135. #define SPERR_NO_CHANNELS            ((ULONG) 14)
  136. #define SPERR_VERSION_CONFLICT       ((ULONG) 15)
  137. #define SPERR_NO_SAMPLES_LOADED      ((ULONG) 16)
  138.  
  139.         /* Each new Library-Subversion may contain new Codes above
  140.            the last one of these.
  141.            So do not interpret the codes directly, but use
  142.            SPL_GetErrorString.
  143.            Maybe, newer Codes might not be listed up here.
  144.         */
  145.  
  146. #endif /* SUPERPLAY_SUPERPLAY_H */
  147.